A large cloud application with complex architecture may have various roles indicating one or more distinct subsystems of the cloud application. For example, the cloud application may include a web server role, a database role, a batch job role, and an index role, among other roles. Due to the function of the cloud application, the cloud application and/or a service provider may need to enforce security compliance, and also quickly evolve the cloud application to iterate on feedbacks and roll out new features, for example. Consequently, the cloud application and its hosted infrastructure may be regularly patched. Furthermore, end users may assume the cloud application and/or service may be visited anytime, anywhere. Thus, the regular patching of the cloud application and its hosting infrastructure should not impact usage. Such impact may be based on the high availability (HA) metric value of the cloud application, where the HA metric value of the cloud application is further based on the HA metric values of the various roles in the cloud application.
Current patching methods fail to consider the HA metric values of the various roles of the cloud applications and/or service, and also fail to provide a well-managed lifecycle of the patching process. Accordingly, current patching methods associated with cloud applications could use improvements and/or alternative or additional solutions, such that an automatic and cyclical patching process may be defined that enables a high availability of the applications to be maintained.